Thanks, guys. Unfortunately, I ran out of time before the first post was made, so I ended up not getting the optimal code. So lesson learned, I need to leave more time if I'm going to ask for clarifications from now on, and this is all great stuff to apply to future code.